<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // 对象 {}
    // 数组 [] 
    // 引用数据类型  共用内存地址  

    var a = [1,2,3,4]
    var b = a 
    b.push(5,6,7)
    console.log(a)

    // 箭头函数
    var fn =  (a)=>{
        return a;
    }

    // 箭头函数的缩写 
    var fn2 = a => a;
    // push pop shift unshift splice 
    // forEach for map find filter every some reduce 
    var list = [11,22,33,44,55,66,77,88,99]

    var sum = 0;
    // forEach 只是循环 不能return
    list.forEach(function(item,index){
        console.log(item)
        sum +=item 
    })
    console.log(sum)

    // map 映射 必须要写return
    var arr = list.map(function(item,index){
        return {
            item,
            index,
        }
    })
    console.log(arr)

    // 可以return 
    // for(var i=0;i<list.length;i++){
    //     console.log(list[i])
    // }

    // filter 过滤  true 留下来
    var arr1 = list.filter(item=>{
        return item > 50;
    })
    console.log(arr1)
    var arr2 = list.filter(item=>item>70)
    console.log(arr2)

    // find 查询某一个元素 满足条件的第一个 
    // findIndex 
    // fill 

    var arr3 = list.find(item=>item==55)
    console.log(arr3)

    var arr4 = list.findIndex((item,index)=>{
        return item == 77;
    })
    console.log(arr4)

    // some 只要有一个满足就 true  
    var flag = list.some(item=>item>70)
    console.log(flag)
    
    // every 所有的都要满足条件 
    var flag1 = list.every(item=>item>10)
    console.log(flag1)

    // reduce 累计的求值   加 乘 
    // array.reduce(function(total, currentValue, currentIndex, arr), initialValue)   // initialValue 默认 0 
    var amount = list.reduce((total,item)=>{
        return total+item 
    },0)

    var amount1 = list.reduce((total,item)=>total * item ,1)  
    console.log(amount1)

    // 找一下资料学习一下 
    // fill()
    // flat()


    // 文档和API 语法太多  只需要记住一些常用的语法API 生僻的API 直接去百度查看 
    // 正则  规则太多    
    // 独立开发  面向百度编程 

    
</script>
</html>